package cn.jsj.invite.service;

import cn.jsj.invite.pojo.InvitationInfo;
import cn.jsj.invite.pojo.StudentEnt;
import com.github.pagehelper.PageInfo;
import org.springframework.web.multipart.MultipartFile;

public interface InvitationService {

    /**
     * 根据ID查询某一个帖子
     *
     * @param id 主键
     * @return 帖子对象
     */
    InvitationInfo getOneInvitationById(Integer id);

    /**
     * 根据方向和标签查询帖子
     *
     * @param tag        标签
     * @param area       方向
     * @param pageNumber 页号
     * @return 帖子信息集合
     */
    PageInfo<InvitationInfo> listInvitationByTagAndArea(String tag, Integer area, Integer pageNumber);

    /**
     * 根据方向进行查询帖子
     *
     * @param area       方向
     * @param pageNumber 页号
     * @return 帖子信息集合
     */
    PageInfo<InvitationInfo> listInvitationByArea(Integer area, Integer pageNumber);

    /**
     * 获取发帖人的联系方式
     *
     * @param studentId    发帖的学生ID
     * @param invitationId 帖子ID
     * @return 发帖学生的联系方式
     */
    StudentEnt getInvitationPublisherContactInfo(Integer studentId, Integer invitationId);

    /**
     * 学生发布帖子
     *
     * @param info  帖子信息
     * @param photo 帖子图片
     * @return 成功1，否则0
     */
    Integer publishOneStudentInvitation(InvitationInfo info, MultipartFile[] photo);

}
